|
Mantleは、3Dゲームを対象としたローレベルレンダリングAPIである。アドバンスト・マイクロ・デバイセズ(AMD)が、EA Digital Illusions CE(DICE)と共同で2013年より開発を開始した〔。Direct3DおよびOpenGLを代替するものとして設計され、主としてパーソナルコンピュータ向けであるが、PlayStation 4とXbox Oneに搭載されているGPU (APU) もサポートする〔〔。 AMDによると、DirectX 12 (Direct3D 12) もしくはによるMantle派生のVulkan APIによってMantle 1.0の置換が可能であることから、Mantle自体は2015年3月以降、別の領域にフォーカスをシフトするとされている〔 〕 〔[GDC 2015]AMD独自API「Mantle“1.0”」が事実上の終了。AMDはDirectX 12と次世代OpenGLの利用を呼びかけ - 4Gamer.net 〕。2015年3月までの2年間は、デバイスドライバーによるサポートが行われていたものの、Mantle API仕様自体は一般公開されていなかった。 == 概要 == Mantleが開発された背景には、従来からPC向けのリアルタイム3次元コンピュータグラフィックスAPIとして利用されてきたDirect3DおよびOpenGLは、コンソール(ゲーム専用機)環境とは違って抽象化・共通化・標準化が重視されるためにAPIコールのオーバーヘッドが大きく、またレンダリングにマルチコアCPUを最大限活用することができないといった問題を抱えていたことが挙げられる〔AMDがグラフィックスAPI「Mantle」を発表。次世代機を制したAMDによる「ゲーム開発者囲い込み&NVIDIA排除システム」の正体に迫る - 4Gamer.net 〕。これらの問題は特にAAAタイトルのゲームソフトウェアのように厳しい最適化が要求されるケースで大きな悪影響をもたらす。 Mantleにおけるドローコールの改良により、CPUがボトルネックとなっているケースが緩和される〔AMD’s Revolutionary Mantle 〕 。Mantleの設計目標は、ゲームおよびアプリケーションがCPUとGPUを効果的に利用すること、APIによるコマンドの評価・検証 (Validation) のオーバーヘッドを減らし、マルチコアCPUでのスケーラビリティを向上させることでCPUのボトルネックを取り除くこと、より高速な描画ルーチンを提供すること、そしてDirect3DやOpenGLが有するハードウェア抽象化の一部を取り除くことで、より詳細なグラフィックスパイプラインの制御を可能にすることである。 なお、Mantleはハードウェア制御のいくつかをAPIからアプリケーション側に移すことで、アプリケーション開発者による詳細かつ直接的なハードウェア制御を可能にする反面、Direct3D/OpenGLのように高度に抽象化されたAPIを利用する場合と比較して開発工数が増加する可能性が存在することから、ゲーム向けというよりはむしろゲームエンジン向けであるとの指摘もなされている〔。 Mantleの登場後、ローレベルを指向した新世代のグラフィックスAPIとして、AppleのMetal、MicrosoftのDirectX 12、そしてKhronosのVulkanが次々に発表された。DirectX 12に関してはMantleに触発されて開発が始まったことが示唆されており〔【後藤弘茂のWeekly海外ニュース】GPUの進化に対応したMicrosoftの次世代API「DirectX 12」の背景 - PC Watch 〕、またVulkanに関してはMantleを要素技術として取り込んだことが発表されており〔[GDC 2015]Khronos,新世代グラフィックスAPI「Vulkan」でAMDの「Mantle」を採用 - 4Gamer.net 〕 〔【後藤弘茂のWeekly海外ニュース】Khronosの次期グラフィックスAPI「Vulkan」 - PC Watch 〕、Mantleは新世代のローレベルAPIの先駆者となる役割を果たした。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Mantle (API)」の詳細全文を読む スポンサード リンク
|